package face.pay.web.device.service;

import face.pay.entity.DeviceAssignmentInfo;
import face.pay.entity.DeviceBatchInfo;
import face.pay.entity.DeviceOrderInfo;
import face.pay.entity.UserInfo;
import face.pay.util.ResultMessage;
import face.pay.util.page.PageData;
import face.pay.util.page.PageParam;
import face.pay.web.device.bo.DeviceOrderInfoBO;

import java.util.List;


/**
 * @Classname DeviceOrderInfoService
 * @Description JJL
 * @Date 2019/11/11 13:21
 */
public interface DeviceOrderInfoService {

    /**
     * 新增导入的信息
     * @param deviceOrderInfoList
     * @return
     */
    ResultMessage addDeviceOrderInfos(UserInfo loginUser, DeviceBatchInfo deviceBatchInfo, List<DeviceOrderInfoBO> deviceOrderInfoList);

    /**
     * 查询当前用户下可使用的设备
     * @param loginUser
     * @param pageParam
     * @param deviceOrderInfo
     * @return
     */
    PageData queryPage(UserInfo loginUser, PageParam pageParam,DeviceOrderInfo deviceOrderInfo);

    /**
     * 代理商转出设备
     * @param userId
     * @param deviceOrderId
     * @return
     */
    ResultMessage assignmentDeviceOrderInfo(UserInfo loginUser,Integer userId, Integer deviceOrderId, DeviceAssignmentInfo deviceAssignmentInfo);

    /**
     * admin根据批次查询信息
     * @param batchId
     * @return
     */
    PageData getBatchIdInfo(PageParam pageParam,Integer batchId);
}
